In the Internet, data transfer is executed between sites located in a geographically distributed manner, and a volume of data transmitted and received between sites has been increased in recent years. It is therefore demanded to transfer data at a high speed even its volume of data transfer is large.
Site here is assumed to represent a place where one or a plurality of server machines are disposed which are capable of processing or accumulating data as shown in FIG. 11, for example.
With reference to FIG. 11, server machines 1030a to 1030n of a site 1000 are connected to an edge router 1010 located for accessing an AS (Autonomous System) 1200 provided by an ISP (Internet Service Provider) through an L2 switch 1020. The L2 switch 1020 is not limited to that shown but can be a multilayer switch, for example.
The edge router 1010 is connected to the AS 1200, and the site 1000 uses the AS 1200 to link to the entire Internet 1100 through one AS 1200.
At least one of server machines 1030a to 1030n is provided and the number of the same is assumed not to be limited.
Specific method of identifying such a site disposed in a geographically distributed manner as described above is an identification method on a city or nation basis, for example.
Site installation form ranges from small-size installation in which a server machine stored in a rack is disposed on a floor in a building to an Internet data center (iDC) which exclusively accommodates groups of a large number of server machines.
Specific example of high-speed data transfer between respective sites disposed in a geographically distributed manner includes copying of data from a Web site issued from a contents holder or a site which hosts contents data such as moving image (also called as an origin site) to an edge site which executes delivery to an end user in a CDN (Contents Delivery Network).
Another example in a CDN is, when an edge site accessed by a contents user fails to cache contents which are desired by the contents user and whose time limit is yet to come, to transfer contents data from the above-described origin site to the edge site.
A further example is to transfer data which is dynamically generated by an origin site and which cannot be originally cached from the origin site to an edge site accessed by an end user.
In these examples, transferring data from an origin site to an edge site at a high-speed enhances bodily sensation and satisfaction of an end user.
In the Internet, when transferring data between sites disposed in a geographically distributed manner, it is crucial to select an optimum transfer path in order to execute high-speed data transfer.
In the past related art, a functionally optimum path cannot be always selected.
In the following, description will be made in order with respect to data transfer according to related art between sites disposed in a geographically distributed manner.
First, the Internet is structured with ASs each as a unit of a network operated by an ISP, a major portal provider or the like connected with each other.
AS is a set of individual routers and end systems and has a unique number in the world allotted.
Each AS exchanges path information based on a row of AS numbers reachable to a certain IP (Internet Protocol) address prefix by using a path control protocol called BGP (Border Gateway Protocol). IP address prefix represents a set of IP addresses whose numbers are sequential.
Each AS generates a transfer table indicative of a hop (which is represented by an IP address applied to a network interface of a router or a server) to be transferred next to a certain IP address prefix based on received path information.
Connection between ASs is contracted and executed according to business decision of an individual operator, and a format of connection between ASs mainly includes peering and transit.
Peering is connecting ASs and exchanging traffic with each other by ISPs under equal conditions. Peering enables transmission and reception basically free of charge premised on exchange of the same volume of traffic with each other.
Also in peering, each notifies the other of a group of addresses reachable to its own subordinates.
On the other hand, transit represents packet relay service provided by a certain ISP to other company in the same industry or the like. In transit, an ISP which provides packet relay service guarantees, to a customer (other company in the same industry etc.) which receives supply of the packet relay service, reachability of a packet to the entire Internet and is paid a fee from the customer according to a volume of traffic transferred between the two parties.
At present, accumulated connection relationships between ASs by the above-described peering, transit or the like establish a layered structure between operators such as Tier1 and Tier 2 in the Internet.
Connection relationship between ASs established by peering, transit or the like gives heavy constraints on how a route between two points in the Internet is made.
In a case, for example, where a packet received by a certain AS from an AS of a peering partner is transferred to a higher AS as a provider of a transit or a packet received from a higher AS is transferred to an AS of a peering partner or data received from a peering partner is sent to another peering partner, it will be considered that a packet is in practice transferred free of charge.
In order to solve the problem, a management entity of AS usually exchanges path information by BGP according to a policy shown below. More specifically, the management entity of the AS notifies, to a peering partner or a provider of a transit, a path that can reach inside its own AS or in a case where itself is a transit provider, notifies only a path of its customer.
As a result, a path between two points by BGP is not always a functionally optimized path. More specifically, the number of hops of a router on a path between certain two points is not always the smallest.
For example, FIG. 12 shows a condition for transferring data from a site X using an AS1 to a site Y using an AS3. Specific example where a certain site uses a certain AS is that the site subscribes to an ISP which operates the AS.
Although a path having the smallest number of hops between the site X and the site Y is AS1→AS4→AS2→AS5→AS3, when each AS exchanges path information according to the above-described policy of exchanging path information, a selected path will be AS1→AS4→AS6→AS8→AS9→AS7→AS5→AS3 whose path length will be longer than the shortest path.
Actual example where a path length will be longer than the shortest path is shown in FIG. 3 of Non-Patent Literature 2, for example.
Shown in FIG. 3 of Non-Patent Literature 2 is a state where even between relatively close points in terms of geography, in such an area as Southeast Asia where connection between ASs by Internet Exchange or the like is not fully provided, packets are transferred via each of European and American Continents. Passing through different continents involves a large propagation delay.
While the foregoing is the description of data transfer according to related art between sites disposed in a geographically distributed manner, transferring data without error is an important factor in data transfer.
Therefore, used in the Internet is a TCP (Transmission Control Protocol) for transferring data of an application such as an HTTP (Hyper Text Transfer Protocol) between end systems such as a server machine or a PC of an end user without error.
In TCP, data is transferred without error by receiving and processing a response of reception confirmation of data transferred.
Throughput at the time of data transfer by TCP depends on RTT (Round Trip Time) equivalent to a delay caused in a to-and-fro of transmission and reception or on a packet loss rate. One example is shown in Non-Patent Literature 3.
RTT includes a to-and-fro propagation delay in transmission and reception, a protocol processing delay of a packet in a device at the time of to-and-fro, a delay in transfer onto a line and the like. In a to-and-fro of transmission and reception, the same path is not always used in a to-and-fro of transmission and reception.
In general, when the number of hops on the Internet is increased in transmission and reception, a packet loss rate is increased. When a link between ASs by a submarine cable connecting different continents or islands is included, RTT will be increased by a propagation delay.
An increase in a packet loss rate or an increase in RTT will decrease throughput at the time of data transfer by TCP.
Reference literatures for the above description are:
Non-Patent Literature 1: Y. Rekhter and T. Li, “A Border Gateway Protocol 4 (BGP-4)”, RFC1771, March 1995;
Non-Patent Literature 2: Jon Baggaley, Batchuluun Batpurev, and Jim Klaas, “The World-Wide Inaccessible Web, Part 2: Internet Routes”, The International Review of Research in Open and Distance Learning Vol. 8, No. 2 (2007);
Non-Patent Literature 3: J. Padhye, V. Firoiu, D. Towsley, J. Kurose, “Modeling TCP Throughput: A Simple Model and Its Empirical Validation”, Proceedings of SIGCOMM 98, 1998;
Non-Patent Literature 4: Robert Endre Tarjan, Data Structures and Network Algorithms, Society for Industrial Mathematics, Jan. 1, 1987;
Non-Patent Literature 5: Configuring Hierarchical Squid Caches (http://old.squid-cache.org/Doc/Hierarchy-Tutorial/tutorial-7.html); and
Non-Patent Literature 6: Hayim Porat, Nurit Sprecher, and Zehavit Alon, “E-NNI Registration Protocol”, http://www.ieee802.org/l/files/public/docs2009/new-porat-E-NNI-Registration-protocol-0309-v03.pdf.
In the above-described data transfer between sites disposed in a geographically distributed manner according to the related art, when an AS to be used by each site is determined independently without specifically considering existence/non-existence of a connection relationship between ASs, throughput in data transfer might not be improved.
The reason is that when transferring data from a certain site to another site, if there exists no connection relationship between ASs used by the respective sites, more ASs will be involved in a path between the sites to increase the number of hops on a router basis, resulting in inviting an increase in RTT and packet loss opportunities to worsen throughput of TCP in some cases.